package com.yisu.auction.api.core.service;

import com.yisu.auction.api.domain.request.BasePage;
import com.yisu.auction.api.domain.request.operatorBusiness.TelephoneChargeRequest;
import com.yisu.auction.api.domain.response.rechargePackge.RechargeListResponse;
import com.yisu.auction.api.domain.vo.mobileChargePackageVos.RechargeCallBackResponse;
import com.yisu.auction.api.domain.vo.mobileChargePackageVos.RechargeResponse;
import com.yisu.auction.ewf.entity.MobileRecharge;

import java.util.List;

/**
 * author: 赵杰
 * Business Description：手机充值业务
 * createTime：2017/9/2
 */
public interface IMobileRechargeService {
    /**
     * author: 赵杰
     * Business Description：添加手机充值
     * @param telephoneChargeRequest
     * @return
     */
    String addMobileRecharge(TelephoneChargeRequest telephoneChargeRequest) throws InterruptedException;

    /**
     * author: 赵杰
     * Business Description：通过订单编号获取手机充值对象
     * @param orderNo
     * @return
     */
    MobileRecharge getMobileRechargeByOrderNo(String orderNo);

    /**
     * author: 赵杰
     * Business Description：回调
     * @param rechargeCallBackResponse
     * @return
     */
    boolean notify(RechargeCallBackResponse rechargeCallBackResponse);

    /**
     * 根据ID获取用户充值信息
     * @param basePage
     * @return
     */
    List<RechargeListResponse> getRechargeList(BasePage basePage);
}
